/**
 * @Copyright:Copyright (c) 2018 - 2100
 * @Company:gome
 */

package com.gome.gop.config;

import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.alibaba.druid.support.http.StatViewServlet;
import com.alibaba.druid.support.http.WebStatFilter;

/**
 * @Title:
 * @Description:
 * @Author:chengcheng7
 * @Since:2020年4月27日 上午11:55:19
 * @Copyright:Copyright (c) 2018 - 2100
 * @Company:gome
 * @Version:1.1.0
 */

@Configuration
public class DruidConfiguration {
    
    @Bean
    public ServletRegistrationBean statViewServle() {
        ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*");
        // IP白名单
        // servletRegistrationBean.addInitParameter("allow","192.168.1.12,127.0.0.1");
        // IP黑名单
        // servletRegistrationBean.addInitParameter("deny","192.168.4.23");
        // 控制台用户
        servletRegistrationBean.addInitParameter("loginUsername", "anxlgop");
        servletRegistrationBean.addInitParameter("loginPassword", "bc655add");
        // 是否能够重置数据
        servletRegistrationBean.addInitParameter("resetEnable", "false");
        return servletRegistrationBean;
    }
    
    @Bean
    public FilterRegistrationBean statFilter() {
        FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean(new WebStatFilter());
        // 添加过滤规则
        filterRegistrationBean.addInitParameter("exclusions", "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");
        return filterRegistrationBean;
    }
}